#include<stdio.h>
#include<stdlib.h>
using namespace std;
#define OK 1
#define ERROR 0
#define OVERFLOW -2
typedef char Status; //Status 是函数返回值类型，其值是函数结果状态代码。
typedef char ElemType; //ElemType 为可定义的数据类型，此设为int类型

#define MAXSIZE 100			//顺序表可能达到的最大长度
typedef struct
{
    ElemType *base;
    ElemType *top;
    int stacksize;
}L;
Status k(L &s)
{
    s.base=new ElemType[MAXSIZE];
    if(!s.base) exit(OVERFLOW);
    s.top=s.base;
    s.stacksize=MAXSIZE;
    return OK;
}
Status P(L &s,ElemType e)
{
    if(s.top-s.base==s.stacksize) return ERROR;
    *s.top=e;
    s.top++;
    return OK;
}
Status C(L &s,ElemType &e)
{
    if(s.top==s.base) return ERROR;
    s.top--;
    e=*s.top;
    return OK;
}
Status D(L s)
{
    ElemType e;
    if(s.top==s.base) return ERROR;
    e=*(s.top-1);
    return e;
}
Status E(L s)
{
    if(s.top==s.base) return 0;
    else return 1;
}
